﻿using SqlSugar;
using Zhp.SqlSugar.Entity;
using Zhp.Workflow.Models;

namespace Zhp.Workflow.Entity
{
    /// <summary>
    /// 待办
    /// </summary>
    [SugarTable("WF_Todo")]
    public class WorkflowTodo : BaseEntity<WorkflowTodo, long>
    {
        [SugarColumn(IsNullable = false, ColumnDescription = "审批者ID")]
        public long ApproverId { get; set; }

        [SugarColumn(IsNullable = false, ColumnDescription = "审批角色类型")]
        public ApproverRoleEnum ApproverRole { get; set; }

        [SugarColumn(IsNullable = false, ColumnDescription = "流程名称")]
        public string WorkflowName { get; set; }

        [SugarColumn(IsNullable = false, ColumnDescription = "流程ID")]
        public string WorkflowId { get; set; }

        [SugarColumn(IsNullable = false, ColumnDescription = "活动ID")]
        public string ActivityId { get; set; }

        [SugarColumn(IsNullable = false, ColumnDescription = "实体类型")]
        public string ModelType { get; set; }

        [SugarColumn(IsNullable = false, ColumnDescription = "实体ID")]
        public string ModelID { get; set; }

        [SugarColumn(IsNullable = false, ColumnDescription = "提交者ID")]
        public string SubmitterId { get; set; }

        [SugarColumn(IsNullable = false, ColumnDescription = "提交者")]
        public string SubmitterName { get; set; }

        [SugarColumn(IsNullable = false, ColumnDescription = "流程状态")]
        public WorkflowStatusEnum WorkflowStatus { get; set; }

        [SugarColumn(IsNullable = false, ColumnDescription = "是否已发送")]
        public bool IsSend { get; set; }

        [SugarColumn(IsNullable = true, ColumnDescription = "消息发送时间")]
        public DateTime? SendTime { get; set; }
    }
}
